import Vue from 'vue'
import VueRouter from 'vue-router'
import Login from "../components/Login.vue"
import Home from "../components/Home.vue"
import Welcome from "../components/Welcome.vue"
import Users from "../components/user/Users.vue"
import Rights from "../components/power/Rights.vue"
import Roles from "../components/power/Roles.vue"
import Cate from "../components/goods/Cate.vue"
import Params from "../components/goods/Params.vue"
import GoodsList from "../components/goods/List.vue"
import Add from "../components/goods/Add.vue"
import Order from "../components/order/Order.vue"
import report from "../components/report/report.vue"
Vue.use(VueRouter)


const router = new VueRouter({
  routes: [
    { path: "/login", component: Login },
    {
      path: "/home",
      component: Home,
      redirect: "/welcome",
      children: [
        { path: "/welcome", component: Welcome },
        { path: "/users", component: Users },
        { path: "/rights", component: Rights },
        { path: "/roles", component: Roles },
        { path: "/categories", component: Cate },
        { path: "/params", component: Params },
        { path: "/goods", component: GoodsList },
        { path: "/goods/add", component: Add },
        { path: "/orders", component: Order },
        { path: "/reports", component: report }
      ]
    },
    { path: "/", redirect: "/login" }
  ]
})
router.beforeEach((to, from, next) => {
  if (to.path === "/login") {
    return next();
  }
  const token = window.sessionStorage.getItem("token")
  if (!token) {
    return next("/login")
  } else {
    return next();
  }
})

export default router
